<?php 
class GoodsController extends CommonController{
	// 定义$model链接模型
	private $model;
	public function __init(){
		// 与父级冲突
		parent::__init();
		// 赋值$model
		$this->model = K('Goods');
	}

	// 首页
	public function index(){
		// 获得所有数据
		$data = $this->model->all();
		// 循环所有商品，获得商品总量
		foreach ($data as $k => $v) {
			$gid = $v['gid'];
			// 获得当前商品的货品列表
			$list = K('Goods_list')->where("f_goods_gid={$gid}")->all();
			// 给商品添加一个库存字段
			$data[$k]['total'] = 0;
			foreach ($list as $v) {
				// 循环当前商品的货品列表，把库存相加
				$data[$k]['total'] = $data[$k]['total']+$v['many'];
			}
		}
		// 分配给前端
		$this->assign('data',$data);
		// 显示模板
		$this->display();
	}

	// 添加商品
	public function add(){
		// 获得分类数据
		$cateData = K('Category')->all();
		$cateData = Data::tree($cateData,'cname');
		// 分配给前端
		$this->assign('cateData',$cateData);

		// 获得品牌数据
		$brandData = K('Brand')->all();
		// 分配给前端
		$this->assign('brandData',$brandData);
		// p($brandData);

		// 如果提交
		if (IS_POST) {
			// 如果模型函数有错误就返回错误信息
			if (!$this->model->add_data()) {
				$this->error($this->model->error);
			}
			// 提示成功
			$this->success('添加成功',U('Goods/index'));
		}
		// 显示模板
		$this->display();
	}

	// 编辑商品
	public function edit(){
		// 获得分类数据
		$cateData = K('Category')->all();
		$cateData = Data::tree($cateData,'cname');
		// 分配给前端
		$this->assign('cateData',$cateData);

		// 获得品牌数据
		$brandData = K('Brand')->all();
		// 分配给前端
		$this->assign('brandData',$brandData);
		
		// 获得gid
		$gid = Q('get.gid',0,'intval');
		// 获得相应数据
		// $data = $this->model->where("gid={$gid}")->find();
		$data = M()->join("__f_goods__ g JOIN __f_goods_attr__ ga ON g.gid=ga.f_goods_gid JOIN __f_type_attr__ ta ON ga.f_type_attr_taid=ta.taid")->where("g.gid={$gid}")->all();
		p($data);
		// 分配给前端
		$this->assign('data',$data);
		// 显示模板
		$this->display();
	}

	// ajax获得tid返回类型属性
	public function ajax_type(){
		// 获得cid
		$cid = Q('post.cid',0,'intval');
		// 获得tid
		$tid = K('Category')->where("cid={$cid}")->getField('f_type_tid',true);
		$tid =$tid[0];
		// 找到所对应的所有属性
		$typeAttr = K('Type_attr')->where("f_type_tid={$tid}")->all();
		// 返回数据
		// p($typeAttr);die;
		$this->ajax($typeAttr);
	}

	// 上传插件
    public function upload(){
        $upload = new Upload('Upload/Content/' . date('y/m'));
        $file = $upload->upload();
        if (empty($file)) {
            $this->ajax('上传失败');
        } else {
            $data = $file[0];
            $this->ajax($data);
        }
    }






}










 ?>